﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Camc.Quality.ProductionControl
{
    public class ProductionJobOutput
    {
        public Guid? Id { get; set; }

        /// <summary>
        /// 任务编号
        /// </summary>
        public string JobNumber { get; set; }

        /// <summary>
        /// 工艺名称
        /// </summary>
        public string TechniqueName { get; set; }
        /// <summary>
        /// 工艺编号
        /// </summary>
        public string TechniqueNumber { get; set; }
        /// <summary>
        /// 工序名称
        /// </summary>
        public string ProductionName { get; set; }
        /// <summary>
        /// 工步名称
        /// </summary>
        public string WorkStepDrawingNo { get; set; }

        /// <summary>
        /// 工步名称
        /// </summary>
        public string WorkStepName { get; set; }

        /// <summary>
        /// 标准工时
        /// </summary>
        public decimal WorkingHour { get; set; }
        /// <summary>
        /// 绩效工时
        /// </summary>
        public decimal PerformanceHour { get; set; }

        /// <summary>
        /// 装配班组描述
        /// </summary>
        public string OrganizationUnitDesc { get; set; }

        /// <summary>
        /// 装配人员描述
        /// </summary>
        public string UserName { get; set; }
        /// <summary>
        /// 装配人员详细信息
        /// </summary>
        public List<JobWorkerOut> JobWorkers { get; set; }


    }
    public class JobWorkerOut
    {

        public Guid? Id { get; set; }
        /// <summary>
        /// 任务Id
        /// </summary>
        public Guid TaskId { get; set; }

        /// <summary>
        /// 序号
        /// </summary>
        public int Sort { get; set; }
      
        /// <summary>
        /// 装配班组
        /// </summary>
        public long OrganizationUnitId { get; set; }
        /// <summary>
        /// 装配班组描述
        /// </summary>
        public string OrganizationUnitDesc { get; set; }
        /// <summary>
        ///装配人员
        /// </summary>
        public long UserId { get; set; }

        /// <summary>
        /// 装配人员描述
        /// </summary>
        public string UserName { get; set; }

        /// <summary>
        /// 绩效工时
        /// </summary>
        public decimal PerformanceHour { get; set; }

        /// <summary>
        /// 报工工时
        /// </summary>
        public decimal ReportHour { get; set; }
        /// <summary>
        /// 报工时间
        /// </summary>
        public DateTime? ReportTime { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remark { get; set; }
        /// <summary>
        /// 撤销原因
        /// </summary>
        public string BackReason { get; set; }
        /// <summary>
        /// 是否勾选
        /// </summary>
        public bool IsCheck { get; set; }


    }

    public class MakeReportInput
    {
        /// <summary>
        /// 任务Id
        /// </summary>
        public Guid TaskId { get; set; }
        public List<JobWorkerOut> JobWorkers { get; set; }
        /// <summary>
        /// 0 默认提报 1 结束提报  2 重新启用
        /// </summary>
        public int operation { get; set; } = 0;
    }


    public class BackInput
    {
        /// <summary>
        /// 撤销原因
        /// </summary>
        public string BackReason { get; set; }

        public Guid Id { get; set; }
    }
}
